import Vue from "vue"
import Vuex from "vuex"
import getters from "./getters"
// import createPersiste from "vue-savedata" // 自动缓存store指定的数据（配置最简，性能最佳）

Vue.use(Vuex)

// 引入modules文件夹下的所有文件
const modulesFiles = require.context('./modules', true, /\.js$/)
//您不需要“从导入应用程序”。/modules/app”`
//它将自动要求模块文件中的所有vuex模块

const modules = modulesFiles.keys().reduce((modules, modulePath) => {
  // 设置 './app.js' => 'app'
  const moduleName = modulePath.replace(/^\.\/(.*)\.\w+$/, '$1')
  const value = modulesFiles(modulePath)
  modules[moduleName] = value.default
  return modules
}, {})


export default new Vuex.Store({
  modules,
  getters
})
